#!/usr/bin/env python
# -*- coding:utf-8 -*-

# 模式	描述
# r	以读方式打开文件，可读取文件信息。
# w	以写方式打开文件，可向文件写入信息。如文件存在，则清空该文件，再写入新内容
# a	以追加模式打开文件（即一打开文件，文件指针自动移到文件末尾），如果文件不存在则创建
# r+	以读写方式打开文件，可对文件进行读和写操作。
# w+	消除文件内容，然后以读写方式打开文件。
# a+	以读写方式打开文件，并把文件指针移到文件尾。
# b	以二进制模式打开文件，而不是以文本模式。该模式只对Windows或Dos有效，类Unix的文件是用二进制模式进行操作的。
import fileinput
import os
import time


def fileread():
    fp = open("hello.txt")
    for line in fp:
        print line
    fp.close()


def fileappend():
    fp = open("hello.txt", "a")
    fp.write("\n\n------------------------------------------------------")
    fp.close()


def with_file():
    with open("hello.txt", "a") as f:  # 优雅的Python
        f.write("777777777777777777777777")
    with open("hello.txt") as f:
        print f.read()


# 大文件读取
def large_file():
    for line in fileinput.input("hello.txt"):
        print line
        # for line in f:
        #     print line


def file_property():
    file_stat = os.stat("hello.txt")
    print file_stat
    print time.localtime(file_stat.st_ctime)


if __name__ == '__main__':
    fileread()
    print "==============================="
    fileappend()
    print "==============================="
    with_file()
    print "==============================="
    large_file()
    print "==============================="
    file_property()
